Expand description
tinyvec
based string types.
tinyvec_string
provides two string types:
ArrayString
, a string backed by a fixed-size array on the stack, usingArrayVec
TinyString
, a string backed by either a fixed-size array on the stack or aVec
on the heap
§Features
Like tinyvec
, tinyvec_string
is no_std
by default.
ArrayString
has no dependencies (other than tinyvec
and core
).
TinyString
requires the the alloc
cargo feature to be enabled because
it has a dependency on alloc
:
[dependencies]
tinyvec_string = { version = "0.3.2", features = ["alloc"] }
Error types implement std::error::Error
when the std
feature is
enabled.
The rustc_1_40
feature enables tinyvec
’s rustc_1_40
feature, which enables
some optimizations for Rust versions >= 1.40.
The rustc_1_55
feature enables usage of const generics to allow usage of
backing arrays of any size.
The rustc_1_57
feature enables TinyString::try_reserve
and
TinyString::try_reserve_exact
.
§Safety
This crate strives to be as safe as possible. Almost all internal unsafe
code is copied verbatim from std
’s String
implementation for maximum
reliability and performance.
§MSRV
Like tinyvec
, tinyvec_string
(without rustc
version features) supports
Rust 1.34+. The alloc
feature requires Rust 1.36+.
Re-exports§
pub use arraystring::ArrayString;
pub use tinystring::TinyString;
alloc
Modules§
ArrayVec
backed strings- Trait for byte arrays.
- tinystring
alloc
Inline/Heap strings. - Re-exports from
tinyvec
.